Побудова зображень на екрані комп’ютера.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Не вказано
Кафедра:
Кафедра автоматики та телемеханіки

Інформація про роботу

Рік:
2005
Тип роботи:
Розрахунково - графічна робота
Предмет:
Комп'ютерна графіка
Група:
КС-2

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ ДЕРЖАВНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра АТ ІКТАМ  Графічно-розрахункова робота з комп’ютерної графіки “Побудова зображень на екрані комп’ютера” Виконав: cт.. гр.КС-2 Прийняв: Львів 2005 р. 1. ЗАВДАННЯ Розробити блок-схему алгоритму та програму мовою Turbo Pascal для побудови довільних графіків функцій. Програма складається з двох частин: 1) здійснює табуляцію функції і записує результати у двійковий файл; 2) зчитує дані з файлу і будує графік з автоматичним масштабуванням осей координат та їх оцифровкою. Шрифт розмітки осей графіка – Triplex. Колір ліній – Blue. Колір фону – black чи white. 2. ТЕОРЕТИЧНА ЧАСТИНА 2.1. Табулювання функції та збереження результатів в двійковий файл. Функція, що за умовою задачі вибирають довільним чином, буде неодноразово використовуватися в програмі, тому слід написати підпрограму-функцію, після чого щоразу викликати цю функцію. Функція описується таким чином: function <назва>(<список формальних параметрів>) : <тип функції>; <розділи описів і оголошень функції>; begin <розділ команд функції, де має бути така команда: ‘назва:=вираз’> end; Після цього виклик функції здійснюється лише з виразів так: <назва> (<список фактичних параметрів>) Наступна дія в програмі – введення інтервалу табуляції функції та кроку табуляції. Для цього використаємо стандартні команди writeln та read. Для виконання табуляції використаємо цикл з передумовою: while <логічний вираз> do <команда 1>; При цьому щоразу відбувється збільшення значення X на крок h. Додаткова проблема – запис результатів табулювання в двійковий файл. Для розв’язання цієї проблеми використаємо запис (record) – структурований тип даних, призначений для зберігання в оперативній пам’яті та опрацювання певних даних. Запис описують у розділі type так: type <назва типу запису>=record <назва поля 1> : <тип поля 1>; ... <назва поля n> : <тип поля n>; end; Після цього доступ до конкретного поля запису дає складне ім’я вигляду: <назва запису>.<назва поля> Для роботи із файлом у розділі описів типів описують файловий тип: type <ім’я типу>=file of <базовий тип>; Це також можна зробити безпосередньо у розділі оголошення змінних. Далі в програмі будуть використані такі команди: assign(<ім’я файлу>,<зовнішнє ім’я>); - налогоджує зв’язок між іменем файлу і файлом на зовнішньому носії; rewrite(<ім’я файлу>); - відкриває файл для записування в нього даних; write(<ім’я файлу>,<ім’я змінної>); - записує (виводить) дане у файл; close(<ім’я файлу>); - закриває файл. Запис даних у файл здійснюється в тому ж циклі, що й табулювання функції. 2.2. Вибір місця побудови координатних осей та розрахунок коефіцієнта масштабування. Наступною частиною програми є розрахунок координат для побудови осей абсцис і ординат та розрахунок коефіцієнта масштабування. Визначимо спочатку коефіцієнт масштабування. Для цього знайдемо діапазони отриманих значень для X та Y (віднімемо мінімальне значення від максимального). Щоб знайти діапазон значень X, віднімемо початкове значення інтервалу від кінцевого. Щоб знайти діапазон значень Y, потрібно знайти мінімальне та максимальне значення функції, яких вона набуває на заданому інтервалі значень аргумента X. Пошук цих значень буде відбуватися в тому ж циклі, де табулюється функція. Після цього порівняємо, де діапазон значень більший: по осі абсцис, чи по осі ординат. В залежності від результату порівняння, продовження виконання програми буде відбуватися по певній гілці розгалуження. І, відповідно до цього, коефіцієнт масштабування буде розраховуватися за певною формулою. Додатковою проблемою є вибір положення осі ординат (Y). Для цього використовуються додаткові розгалуження, які перевіряють положення початкового та кінцевого значень інтервалу на осі абсцис (X). В залежності від їх розміщення відносно нуля будується вісь Y, координата якої в кожному випа...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини